-- MySQL Administrator dump 1.4
--
-- ------------------------------------------------------
-- Server version	5.1.30-community


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;

/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;


--
-- Create schema slrtool
--

CREATE DATABASE IF NOT EXISTS slrtool;
USE slrtool;

--
-- Definition of table `adaptacioncadenas`
--

DROP TABLE IF EXISTS `adaptacioncadenas`;
CREATE TABLE `adaptacioncadenas` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `cadena` varchar(700) DEFAULT NULL COMMENT 'Adaptacion de la cadena de busqueda',
  `fuente` int(10) unsigned NOT NULL COMMENT 'Fuente para la que se adapta la cadena',
  `fechaBusqueda` datetime DEFAULT NULL COMMENT 'Fecha en la que se realiza la busqueda en la fuente',
  `cadenaPrimaria` int(10) unsigned NOT NULL COMMENT 'Cadena de busqueda original a adaptar',
  PRIMARY KEY (`id`),
  UNIQUE KEY `fuente` (`fuente`,`cadenaPrimaria`),
  KEY `FK_AdaptacionCadenas_1` (`cadenaPrimaria`),
  CONSTRAINT `FK_AdaptacionCadenas_1` FOREIGN KEY (`cadenaPrimaria`) REFERENCES `cadenasbusqueda` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `FK_adaptacioncadenas_2` FOREIGN KEY (`fuente`) REFERENCES `fuente` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=latin1 COMMENT='Adaptacion de las cadenas originales a cada buscador';

--
-- Definition of table `cadenasbusqueda`
--

DROP TABLE IF EXISTS `cadenasbusqueda`;
CREATE TABLE `cadenasbusqueda` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identidicador',
  `cadena` varchar(500) NOT NULL COMMENT 'Cadena de busqueda original',
  `idRevision` int(10) unsigned NOT NULL COMMENT 'Revision a la que pertenece',
  PRIMARY KEY (`id`),
  UNIQUE KEY `cadena` (`cadena`,`idRevision`),
  KEY `FK_CadenasBusqueda_1` (`idRevision`),
  CONSTRAINT `FK_CadenasBusqueda_1` FOREIGN KEY (`idRevision`) REFERENCES `revision` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=latin1 COMMENT='Cadenas de búsqueda originales';

--
-- Definition of table `calidaddocumento`
--

DROP TABLE IF EXISTS `calidaddocumento`;
CREATE TABLE `calidaddocumento` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `calidad` int(10) unsigned NOT NULL COMMENT 'Criterio de calidad en estudio',
  `documento` int(10) unsigned NOT NULL COMMENT 'Documento en estudio',
  `valor` tinyint(1) NOT NULL DEFAULT '0' COMMENT 'Valor de cumplimiento del documento del criterio',
  `revisado` tinyint(1) NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`),
  UNIQUE KEY `calidad` (`calidad`,`documento`),
  KEY `FK_calidadDocumento_2` (`documento`),
  CONSTRAINT `FK_calidadDocumento_1` FOREIGN KEY (`calidad`) REFERENCES `criteriocalidad` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `FK_calidadDocumento_2` FOREIGN KEY (`documento`) REFERENCES `documento` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=176 DEFAULT CHARSET=latin1;


--
-- Definition of table `categoria`
--

DROP TABLE IF EXISTS `categoria`;
CREATE TABLE `categoria` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `nombre` varchar(45) NOT NULL COMMENT 'Nombre de la categoria',
  `padre` int(10) unsigned DEFAULT NULL COMMENT 'Categoria padre',
  `revision` int(10) unsigned NOT NULL COMMENT 'Revision a la que pertenece la categoria',
  `pregunta` int(10) unsigned DEFAULT NULL COMMENT 'Pregunta de investigacion con la que se relaciona',
  PRIMARY KEY (`id`),
  UNIQUE KEY `nombre` (`nombre`,`padre`,`revision`),
  KEY `FK_categoria_2` (`revision`),
  KEY `FK_categoria_3` (`pregunta`),
  KEY `FK_categoria_1` (`padre`),
  CONSTRAINT `FK_categoria_1` FOREIGN KEY (`padre`) REFERENCES `categoria` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `FK_categoria_2` FOREIGN KEY (`revision`) REFERENCES `revision` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `FK_categoria_3` FOREIGN KEY (`pregunta`) REFERENCES `preguntas` (`id`) ON DELETE SET NULL ON UPDATE SET NULL
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1;

--
-- Definition of table `categoriadocumento`
--

DROP TABLE IF EXISTS `categoriadocumento`;
CREATE TABLE `categoriadocumento` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `documento` int(10) unsigned NOT NULL COMMENT 'Documento que se clasifica',
  `categoria` int(10) unsigned NOT NULL COMMENT 'Categoria del documento',
  `subcategoria` int(10) unsigned DEFAULT NULL COMMENT 'Subcategoria del documento',
  `valor` int(10) unsigned NOT NULL COMMENT 'Valor elegido',
  `revision` int(10) unsigned NOT NULL COMMENT 'Revision a la que pertenece',
  PRIMARY KEY (`id`),
  UNIQUE KEY `documento` (`documento`,`categoria`) USING BTREE,
  KEY `FK_categoriaDocumento_2` (`categoria`),
  KEY `FK_categoriaDocumento_3` (`subcategoria`),
  KEY `FK_categoriaDocumento_4` (`valor`),
  KEY `FK_categoriadocumento_5` (`revision`),
  CONSTRAINT `FK_categoriaDocumento_1` FOREIGN KEY (`documento`) REFERENCES `documento` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `FK_categoriaDocumento_2` FOREIGN KEY (`categoria`) REFERENCES `categoria` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `FK_categoriaDocumento_3` FOREIGN KEY (`subcategoria`) REFERENCES `categoria` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `FK_categoriaDocumento_4` FOREIGN KEY (`valor`) REFERENCES `valor` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `FK_categoriadocumento_5` FOREIGN KEY (`revision`) REFERENCES `revision` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=72 DEFAULT CHARSET=latin1;

--
-- Definition of table `criteriocalidad`
--

DROP TABLE IF EXISTS `criteriocalidad`;
CREATE TABLE `criteriocalidad` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `descripcion` varchar(200) NOT NULL COMMENT 'Drescripcion del criterio de calidad',
  `revision` int(10) unsigned NOT NULL COMMENT 'Revision a la que pertenece',
  PRIMARY KEY (`id`),
  UNIQUE KEY `descripcion` (`descripcion`,`revision`) USING BTREE,
  KEY `FK_CriterioCalidad_1` (`revision`),
  CONSTRAINT `FK_CriterioCalidad_1` FOREIGN KEY (`revision`) REFERENCES `revision` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=latin1 COMMENT='Elementos del checklist de comprobacion de calidad';


--
-- Definition of table `criterioexclusion`
--

DROP TABLE IF EXISTS `criterioexclusion`;
CREATE TABLE `criterioexclusion` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `criterio` varchar(200) NOT NULL COMMENT 'Criterio de exclusion',
  `idRevision` int(10) unsigned NOT NULL COMMENT 'Revision a la que pertenece',
  PRIMARY KEY (`id`),
  UNIQUE KEY `criterio` (`criterio`,`idRevision`),
  KEY `FK_CriterioExclusion_1` (`idRevision`),
  CONSTRAINT `FK_CriterioExclusion_1` FOREIGN KEY (`idRevision`) REFERENCES `revision` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1;

--
-- Definition of table `criterioinclusion`
--

DROP TABLE IF EXISTS `criterioinclusion`;
CREATE TABLE `criterioinclusion` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `criterio` varchar(200) NOT NULL COMMENT 'Criterio de inclusion',
  `idRevision` int(10) unsigned NOT NULL COMMENT 'Revision a la que pertenece',
  PRIMARY KEY (`id`),
  UNIQUE KEY `criterio` (`criterio`,`idRevision`),
  KEY `FK_CriterioInclusion_1` (`idRevision`),
  CONSTRAINT `FK_CriterioInclusion_1` FOREIGN KEY (`idRevision`) REFERENCES `revision` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=latin1;

--
-- Definition of table `documento`
--

DROP TABLE IF EXISTS `documento`;
CREATE TABLE `documento` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `ruta` varchar(150) NOT NULL COMMENT 'Ruta donde se encuentra el PDF',
  `titulo` varchar(250) NOT NULL COMMENT 'Titulo del documento',
  `autor` varchar(200) NOT NULL COMMENT 'Autores del documento',
  `resumen` varchar(3500) DEFAULT NULL COMMENT 'Resumen o abstract del documento',
  `keywords` varchar(500) DEFAULT NULL COMMENT 'Palabras clave del documento',
  `journal` varchar(150) DEFAULT NULL COMMENT 'Revista en la que se publico (si procede)',
  `year` int(11) DEFAULT NULL COMMENT 'Año de publicacion',
  `volumen` int(11) DEFAULT NULL COMMENT 'Volumen en el que se publico (si procede)',
  `pages` varchar(15) DEFAULT NULL COMMENT 'Paginas del documento',
  `publisher` varchar(50) DEFAULT NULL COMMENT 'Editorial que lo publico (si procede)',
  `chapter` int(10) unsigned DEFAULT NULL COMMENT 'Numero del capitulo del libro (si procede)',
  `booktitle` varchar(150) DEFAULT NULL COMMENT 'Titulo del libro al que pertenece (si procede)',
  `comentarios` varchar(500) DEFAULT NULL COMMENT 'Comentarios introducidos por el usuario',
  `excluidoPrimera` tinyint(1) DEFAULT '0' COMMENT 'Excluido en la primera revision',
  `excluidoSegunda` tinyint(1) DEFAULT '0' COMMENT 'Excluido en la segunda revision',
  `numero` int(11) DEFAULT NULL COMMENT 'Numero en el que se publico (si procede)',
  `fuente` int(10) unsigned DEFAULT NULL COMMENT 'Fuente de la que se obtuvo',
  `lugar` varchar(100) DEFAULT NULL COMMENT 'Lugar de publicacion (si procede)',
  `edicion` int(10) unsigned DEFAULT NULL COMMENT 'Edicion de publicacion (si procede)',
  `conferencia` varchar(150) DEFAULT NULL COMMENT 'Nombre de la conferencia de publicacion (si procede)',
  `tipo` int(10) unsigned NOT NULL COMMENT 'Tipo de documento',
  `workshop` varchar(150) DEFAULT NULL COMMENT 'Nombre del workshop de publicacion (si procede)',
  PRIMARY KEY (`id`),
  UNIQUE KEY `titulo` (`titulo`),
  KEY `FK_documento_1` (`fuente`),
  KEY `FK_documento_2` (`tipo`),
  CONSTRAINT `FK_documento_1` FOREIGN KEY (`fuente`) REFERENCES `fuente` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `FK_documento_2` FOREIGN KEY (`tipo`) REFERENCES `tipodocumento` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=83 DEFAULT CHARSET=latin1;

--
-- Definition of table `documentorevision`
--

DROP TABLE IF EXISTS `documentorevision`;
CREATE TABLE `documentorevision` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `idDocumento` int(10) unsigned NOT NULL COMMENT 'Documento',
  `idRevision` int(10) unsigned NOT NULL COMMENT 'Revision a la que pertenece',
  PRIMARY KEY (`id`),
  KEY `FK_documentoRevision_1` (`idDocumento`),
  KEY `FK_documentoRevision_2` (`idRevision`),
  CONSTRAINT `FK_documentoRevision_1` FOREIGN KEY (`idDocumento`) REFERENCES `documento` (`id`) ON DELETE CASCADE ON UPDATE CASCADE,
  CONSTRAINT `FK_documentoRevision_2` FOREIGN KEY (`idRevision`) REFERENCES `revision` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=63 DEFAULT CHARSET=latin1;

--
-- Definition of table `fuente`
--

DROP TABLE IF EXISTS `fuente`;
CREATE TABLE `fuente` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `nombre` varchar(100) NOT NULL COMMENT 'Nombre de la fuente',
  `revision` int(10) unsigned NOT NULL COMMENT 'Revision a la que pertenece',
  `repetidos` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'Numero de documentos repetidos respecto a otras fuentes',
  PRIMARY KEY (`id`),
  UNIQUE KEY `nombre` (`nombre`,`revision`),
  KEY `FK_fuente_1` (`revision`),
  CONSTRAINT `FK_fuente_1` FOREIGN KEY (`revision`) REFERENCES `revision` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=22 DEFAULT CHARSET=latin1;

--
-- Definition of table `participante`
--

DROP TABLE IF EXISTS `participante`;
CREATE TABLE `participante` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `nombre` varchar(45) NOT NULL COMMENT 'Nombre del participante',
  `revision` int(10) unsigned NOT NULL COMMENT 'Revision a la que pertenece',
  `tipo` int(10) unsigned NOT NULL DEFAULT '0' COMMENT 'Tipo de participante (1=busqueda;2=seleccion;3=ambas)',
  PRIMARY KEY (`id`),
  UNIQUE KEY `nombre` (`nombre`,`revision`) USING BTREE,
  KEY `FK_participante_1` (`revision`),
  CONSTRAINT `FK_participante_1` FOREIGN KEY (`revision`) REFERENCES `revision` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1 COMMENT='Personas que participan en la realizacion de la revision';


--
-- Definition of table `preguntas`
--

DROP TABLE IF EXISTS `preguntas`;
CREATE TABLE `preguntas` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `pregunta` varchar(200) NOT NULL COMMENT 'Descripcion de la pregunta',
  `respuesta` varchar(500) NOT NULL COMMENT 'Respuesta a la pregunta',
  `idRevision` int(10) unsigned NOT NULL COMMENT 'Revision a la que pertenece',
  PRIMARY KEY (`id`),
  UNIQUE KEY `pregunta` (`pregunta`,`idRevision`),
  KEY `FK_Preguntas_1` (`idRevision`),
  CONSTRAINT `FK_Preguntas_1` FOREIGN KEY (`idRevision`) REFERENCES `revision` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=latin1 COMMENT='Preguntas a responder por la SLR';

--
-- Definition of table `revision`
--

DROP TABLE IF EXISTS `revision`;
CREATE TABLE `revision` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `titulo` varchar(150) NOT NULL COMMENT 'Titulo o nombre de la revision',
  `antecedentes` varchar(1500) NOT NULL COMMENT 'Antecedentes de la revision',
  `fechaInicio` datetime DEFAULT NULL COMMENT 'Fecha de inicio de la revision',
  `fechaFin` datetime DEFAULT NULL COMMENT 'Fecha de finalizacion de la revision',
  `justificacion` varchar(1500) NOT NULL COMMENT 'Justificacion para llevar a cabo la revision',
  `estrategiasSeleccion` varchar(2000) NOT NULL COMMENT 'Estrategia de seleccion de la revision',
  `estrategiaExtraccion` varchar(2000) NOT NULL COMMENT 'Estrategia de extraccion de la revision',
  `estrategiaSintensis` varchar(2000) NOT NULL COMMENT 'Estrategia de sintesis de la revision',
  `estrategiaDivulgacion` varchar(2000) NOT NULL COMMENT 'Estrategia de divulgacion de la revision',
  `resolucionConflictos` varchar(2000) NOT NULL COMMENT 'Estrategia de resolucion de conflictos de la revision',
  `planificacion` varchar(2000) NOT NULL COMMENT 'Planificacion de la revision',
  PRIMARY KEY (`id`),
  UNIQUE KEY `titulo` (`titulo`),
  UNIQUE KEY `titulo_2` (`titulo`)
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=latin1;

--
-- Definition of table `tipodocumento`
--

DROP TABLE IF EXISTS `tipodocumento`;
CREATE TABLE `tipodocumento` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `tipo` varchar(45) NOT NULL COMMENT 'Tipo de documento',
  `tipoEn` varchar(45) NOT NULL COMMENT 'Tipo de documento en ingles',
  PRIMARY KEY (`id`),
  UNIQUE KEY `tipo` (`tipo`),
  UNIQUE KEY `tipo_2` (`tipo`)
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=latin1;

--
-- Definition of table `valor`
--

DROP TABLE IF EXISTS `valor`;
CREATE TABLE `valor` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'Identificador',
  `valor` varchar(45) NOT NULL COMMENT 'Nombre del valor',
  `categoria` int(10) unsigned NOT NULL COMMENT 'Categoria (o subcategoria) a la que pertenece',
  PRIMARY KEY (`id`),
  UNIQUE KEY `valor` (`valor`,`categoria`),
  KEY `FK_Valor_1` (`categoria`),
  CONSTRAINT `FK_Valor_1` FOREIGN KEY (`categoria`) REFERENCES `categoria` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=28 DEFAULT CHARSET=latin1;

create user usuarioslrtool identified by 'slrtool2293';
grant all on slrtool.* to usuarioslrtool identified by 'slrtool2293';

/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
